Author Robert Hashemian
httpwww.hashemian.com

You can use this code in any manner so long as the author's
name, Web address and this disclaimer is kept intact.

Usage Sample

script language=JavaScript
  TargetDate = 8162013 400 PM;
BackColor = palegreen;
ForeColor = navy;
CountActive = true;
CountStepper = -1;
LeadingZero = true;
DisplayFormat = %%D%% Days, %%H%% Hours, %%M%% Minutes, %%S%% Seconds.;
FinishMessage = It is finally here!;
script
script language=JavaScript src=httpscripts.hashemian.comjscountdown.jsscript


function calcage(secs, num1, num2) {
  s = ((Math.floor(secsnum1))%num2).toString();
  if (LeadingZero && s.length  2)
    s = 0 + s;
  return b + s + b;
}

function CountBack(secs) {
  if (secs  0) {
    document.getElementById(cntdwn).innerHTML = FinishMessage;
    return;
  }
  DisplayStr = DisplayFormat.replace(%%D%%g, calcage(secs,86400,100000));
  DisplayStr = DisplayStr.replace(%%H%%g, calcage(secs,3600,24));
  DisplayStr = DisplayStr.replace(%%M%%g, calcage(secs,60,60));
  DisplayStr = DisplayStr.replace(%%S%%g, calcage(secs,1,60));

  document.getElementById(cntdwn).innerHTML = DisplayStr;
  if (CountActive)
    setTimeout(CountBack( + (secs+CountStepper) + ), SetTimeOutPeriod);
}

function putspan(backcolor, forecolor) {
 document.write(span id='cntdwn' style='background-color + backcolor + 
                ; color + forecolor + 'span);
}

if (typeof(BackColor)==undefined)
  BackColor = white;
if (typeof(ForeColor)==undefined)
  ForeColor= black;
if (typeof(TargetDate)==undefined)
  TargetDate = 8162013 400 PM;
if (typeof(DisplayFormat)==undefined)
  DisplayFormat = %%D%% Days, %%H%% Hours, %%M%% Minutes, %%S%% Seconds.;
if (typeof(CountActive)==undefined)
  CountActive = true;
if (typeof(FinishMessage)==undefined)
  FinishMessage = ;
if (typeof(CountStepper)!=number)
  CountStepper = -1;
if (typeof(LeadingZero)==undefined)
  LeadingZero = true;


CountStepper = Math.ceil(CountStepper);
if (CountStepper == 0)
  CountActive = false;
var SetTimeOutPeriod = (Math.abs(CountStepper)-1)1000 + 990;
putspan(BackColor, ForeColor);
var dthen = new Date(TargetDate);
var dnow = new Date();
if(CountStepper0)
  ddiff = new Date(dnow-dthen);
else
  ddiff = new Date(dthen-dnow);
gsecs = Math.floor(ddiff.valueOf()1000);
CountBack(gsecs);